<template>
    <div>
        <h1>当前求和为：{{sum}}</h1>
        <select v-model.number="num">
            <option value="1">1</option>
            <option value="2">2</option>
            <option value="3">3</option>
        </select>
        <button @click="increment">+</button>
        <button @click="decrement">-</button>
        <button @click="incrementOdd">当前求和为奇数再加</button>
        <button @click="incrementWait">等一等再加</button>

        <hr>
        <!-- <select v-model="num">
            <option value="1" selected>1</option>
            <option value="2">2</option>
            <option value="3">3</option>
            <option value="4">4</option>
        </select>
        <button v-on:click="increment">+</button>
        <button v-on:click="decrement">-</button>
        <button v-on:click="incrementOdd">当前求和为奇数再加</button>
        <button v-on:click="incrementWait">等一等再加</button> -->
    </div>
</template>

<script>
    export default {
        name: 'Count',
        data() {
            return {
                num: 1,// 用户选择的数字
                sum: 0,// 当前的和
            }
        },
        methods: {
            increment() {
                this.sum += this.num;
            },
            decrement() {
                this.sum -= this.num;
            },
            incrementOdd() {
                // 如果当前求和sum 取余2 为零的话，说明是偶数就不能执行该逻辑
                // 其中0转换成布尔值就是false，可以省略写法
                if (this.num % 2) {
                    this.sum += this.num;
                }
            },
            incrementWait() {
                setTimeout(() => {
                    this.sum += this.num;
                }, 500);
            }
        },
    }
</script>

<style scoped>
    button {
        margin-left: 5px;
    }
</style>